Attacking OpenSSL using Side-channel Attacks: the RSA case study

نویسندگان

  • Praveen Kumar Vadnala
  • Lukasz Chmielewski
چکیده

We show that RSA implementation present in OpenSSL can be successfully attacked using sidechannels. In OpenSSL, the modular exponentiation is implemented using m-ary method, where a table of size 2m entries is precomputed. The exponent is divided into words of m-bits each and the algorithm proceeds one word at a time using the precomputed table. Furthermore, to protect against side-channel attacks, it implements message blinding countermeasure. However, this implementation has the following vulnerability: if two operations share the same secret key bit, the correlation between these samples will be higher compared to independent bits. This fact can be used to differentiate the secret key bit from 0 and 1 and can be exploited to reveal the secret key in a so called crosscorrelation attack. The cross-correlation attack works even in the case of message blinding because it does not depend on the absolute values of the operands. In the case of OpenSSL implementation, we cross-correlate the precomputations with the operands used in m-ary exponentiation to recover the full secret key. Furthermore, we explore other, more advanced ways to attack OpenSSL RSA, so called single traces attacks: template and horizontal attacks in particular.

منابع مشابه

Improving timing attack on RSA-CRT via error detection and correction strategy

In timing attack, a class of side channel attack, the attacker attempts to break a cryptographic algorithm by timing the operations of a specific system. Several studies on different types of timing attacks have been published, but they are either theoretical or hard to put into practice. To improve the feasibility of timing attack, the current study proposes an improved timing attack scheme on...

متن کامل

A Major Vulnerability in RSA Implementations due to MicroArchitectural Analysis Threat

Recently, Acıiçmez, Koç, and Seifert have introduced new side-channel analysis types, namely Branch Prediction Analysis (BPA) and Simple Branch Prediction Analysis (SBPA), which take advantage of branch mispredictions occur during the operations of cryptosystems [4, 5]. Even more recently, Acıiçmez has developed another attack type, I-cache analysis, which exploits the internal functionalities ...

متن کامل

Attacking AES Using Bernstein's Attack on Modern Processors

The Advanced Encryption Standard (AES) was selected by NIST due to its heavy resistance against classical cryptanalysis like differential and linear cryptanalysis. Even after the appearance of the modern side-channel attacks like timing and power consumption side-channel attacks, NIST claimed that AES is not vulnerable to timing attacks. In 2005, Bernstein [6] has successfully attacked the Open...

متن کامل

New Branch Prediction Vulnerabilities in OpenSSL and Necessary Software Countermeasures

Software based side-channel attacks allow an unprivileged spy process to extract secret information from a victim (cryptosystem) process by exploiting some indirect leakage of “side-channel” information. It has been realized that some components of modern computer microarchitectures leak certain side-channel information and can create unforeseen security risks. An example of such MicroArchitect...

متن کامل

Cache Attacks and Countermeasures: The Case of AES

We describe several software side-channel attacks based on inter-process leakage through the state of the CPU’s memory cache. This leakage reveals memory access patterns, which can be used for cryptanalysis of cryptographic primitives that employ data-dependent table lookups. The attacks allow an unprivileged process to attack other processes running in parallel on the same processor, despite p...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

متن کامل
عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2017